The present invention relates generally to electronic communications.
During communication sessions in data networks, clients typically request information provided by servers. Increasingly, clients seek information located on different servers, coupled to networks having different data encoding and file transport protocols. For example, a user in an organization using one computer (e.g., a windows-based machine), might seek to access data on another windows-based machine coupled to a local area network (LAN) running Novell NetWare, as well as data on a Unix-based machine, located on a LAN running Unix/NFS (Network File System), as well as data residing on an Apple Macintosh machine, located on a LAN running AppleTalk.
One method for allowing such access requires development of a software application which both connects the two machines (the local client and the destination server) as well performs all the translations in both data encoding and file transport at both ends of the communication link. Such a program, installed and running at both ends of the communication link, can translate the client's network protocols into the proper file access protocols for the server's network, and then retrieve the desired file, while translating the file's data from its original format into a format usable by the client. Each such connection between different types of client and server environments typically requires separate network and data translation schemes. In addition, such software applications must typically reside at the network layer 3, and be installed into the kernel of the operating system of both the client and the server. Therefore, for a number of clients to communicate with a given server, such translation/communication applications typically requires configuration and installation into each client's operating system.
“Tunneling” typically allows redirection of network drives, where a file received in one network protocol (e.g., NFS, Windows Networking (SMB) is typically encrypted within another layer of redirection (the “tunnel”). Generally, tunneling is also implemented at the operating system kernel and is platform specific.
Web browsers can be used to initiate file transfers (e.g., with an “ftp://<url>” nomenclature), but this only allows file transfers from a machine residing on the Internet.